#include <stdio.h>
#include <stdlib.h>

// ch函数用于两个变量的值相互交换
void ch(int *a, int *b)
{
    int c;
    c = *a;
    *a = *b;
    *b = c;
}

void main()
{
    static int a[10] = {32, 5, 18, 56, 98, 52, 78, 15, 132, 112};
    int x = 0, y = 1;
    //如果a[0]>a[1]就交换x和y的值
    if (a[x] > a[y])
        ch(&x, &y); //此时x=1，y=0

    for (int i = 2; i < 10; i++)
        //如果a[i]<a[1]，就把i给x。
        //因为a[x]=>a[1]=5比数组中的其他元素都小，永远不成立
        if (a[i] < a[x])
            x = i;
        //如果当前a[i]比a[y]大，那么就把i赋给y
        //意思就是找出数组中最大元素的下标(索引)
        else if (a[i] > a[y])
            y = i;
    //找出数组中最大的元素和最小的元素，然后相互交换位置，交换a[1]和a[8]
    ch(&a[x], &a[y]);
    //打印输出
    for (int i = 0; i < 10; i++)
    {
        printf("%d, ", a[i]);
    }

    system("pause");
}